Skip to content

Comments

Add missing observe internal dependency#316

Merged
TharmiganK merged 2 commits intomainfrom
fix-failures
Jun 12, 2025
Merged

Add missing observe internal dependency#316
TharmiganK merged 2 commits intomainfrom
fix-failures

Conversation

@TharmiganK
Copy link
Contributor

Purpose

Recently the build is failing due to some compiler plugin tests and when I checked the error, it seems like the temporary distribution is missing the observe internal package which is required for compilation. This PR explicitly add that particular dependency when creating the temporary distribution.

The compiler plugin tests has imports to time and mysql packages but those are not included in the temporary distribution. IIUC since the compiler plugin tests are running without the offline flag these dependencies are getting resolved from central. But some how now the ballerina observe internal package is not getting resolved (IMO this is correct since this internal package resides inside the distribution and not available in the central, but I am not sure how this worked before)

Attaching the complete error stack when the test fails:

java.lang.IllegalStateException: Graph cannot be null in the built-in package: ballerinai/observe:0.0.0
	at io.ballerina.projects.internal.ResolutionEngine.lambda$getBuiltInPkgDescDepGraph$1(ResolutionEngine.java:291)
	at java.base/java.util.Optional.orElseThrow(Optional.java:403)
	at io.ballerina.projects.internal.ResolutionEngine.getBuiltInPkgDescDepGraph(ResolutionEngine.java:290)
	at io.ballerina.projects.internal.ResolutionEngine.mergeGraph(ResolutionEngine.java:262)
	at io.ballerina.projects.internal.ResolutionEngine.mergeGraph(ResolutionEngine.java:272)
	at io.ballerina.projects.internal.ResolutionEngine.populateStaticDependencyGraph(ResolutionEngine.java:198)
	at io.ballerina.projects.internal.ResolutionEngine.resolveDependencies(ResolutionEngine.java:96)
	at io.ballerina.projects.PackageResolution.resolveSourceDependencies(PackageResolution.java:366)
	at io.ballerina.projects.PackageResolution.buildDependencyGraph(PackageResolution.java:309)
	at io.ballerina.projects.PackageResolution.<init>(PackageResolution.java:102)
	at io.ballerina.projects.PackageResolution.from(PackageResolution.java:218)
	at io.ballerina.projects.PackageContext.getResolution(PackageContext.java:278)
	at io.ballerina.projects.PackageCompilation.<init>(PackageCompilation.java:68)
	at io.ballerina.projects.PackageCompilation.from(PackageCompilation.java:96)
	at io.ballerina.projects.PackageContext.getPackageCompilation(PackageContext.java:249)
	at io.ballerina.projects.Package.getCompilation(Package.java:155)
	at io.ballerina.stdlib.persist.compiler.CompilerPluginTest.getErrorDiagnostics(CompilerPluginTest.java:794)
	at io.ballerina.stdlib.persist.compiler.CompilerPluginTest.validateEntityFieldTypeForMysql(CompilerPluginTest.java:184)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
	at org.testng.internal.invokers.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:139)
	at org.testng.internal.invokers.TestInvoker.invokeMethod(TestInvoker.java:677)
	at org.testng.internal.invokers.TestInvoker.invokeTestMethod(TestInvoker.java:221)
	at org.testng.internal.invokers.MethodRunner.runInSequence(MethodRunner.java:50)
	at org.testng.internal.invokers.TestInvoker$MethodInvocationAgent.invoke(TestInvoker.java:969)
	at org.testng.internal.invokers.TestInvoker.invokeTestMethods(TestInvoker.java:194)
	at org.testng.internal.invokers.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:148)
	at org.testng.internal.invokers.TestMethodWorker.run(TestMethodWorker.java:128)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
	at org.testng.TestRunner.privateRun(TestRunner.java:829)
	at org.testng.TestRunner.run(TestRunner.java:602)
	at org.testng.SuiteRunner.runTest(SuiteRunner.java:437)
	at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:431)
	at org.testng.SuiteRunner.privateRun(SuiteRunner.java:391)
	at org.testng.SuiteRunner.run(SuiteRunner.java:330)
	at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
	at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:95)
	at org.testng.TestNG.runSuitesSequentially(TestNG.java:1256)
	at org.testng.TestNG.runSuitesLocally(TestNG.java:1176)
	at org.testng.TestNG.runSuites(TestNG.java:1099)
	at org.testng.TestNG.run(TestNG.java:1067)
	at org.gradle.api.internal.tasks.testing.testng.TestNGTestClassProcessor.runTests(TestNGTestClassProcessor.java:145)
	at org.gradle.api.internal.tasks.testing.testng.TestNGTestClassProcessor.stop(TestNGTestClassProcessor.java:92)
	at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop(SuiteTestClassProcessor.java:62)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
	at jdk.proxy2/jdk.proxy2.$Proxy5.stop(Unknown Source)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker$3.run(TestWorker.java:193)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName(TestWorker.java:129)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:100)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:60)
	at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute(ActionExecutionWorker.java:56)
	at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:113)
	at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:65)
	at worker.org.gradle.process.internal.worker.GradleWorkerMain.run(GradleWorkerMain.java:69)
	at worker.org.gradle.process.internal.worker.GradleWorkerMain.main(GradleWorkerMain.java:74)

Examples

N/A

Checklist

  • Linked to an issue
  • Updated the specification
  • Updated the changelog
  • Added tests
  • Checked native-image compatibility

@sonarqubecloud
Copy link

@codecov
Copy link

codecov bot commented Jun 12, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 87.71%. Comparing base (fc8e6f0) to head (42ed46d).
Report is 3 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff            @@
##               main     #316   +/-   ##
=========================================
  Coverage     87.71%   87.71%           
  Complexity      373      373           
=========================================
  Files            30       30           
  Lines          1188     1188           
  Branches        149      149           
=========================================
  Hits           1042     1042           
  Misses           92       92           
  Partials         54       54           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@TharmiganK TharmiganK merged commit 0008ba2 into main Jun 12, 2025
8 checks passed
@TharmiganK TharmiganK deleted the fix-failures branch June 12, 2025 09:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants